<?php
namespace Swiftx\System;
/**
 * 框架配置程序
 * @author		胡永强  <odaytudio@gmail.com>
 * @since		2015-11-11
 * @copyright	Copyright (c) 2014-2015 Swiftx Inc.
 * @property bool $Debug             调试模式
 * @property string $DebugOut          调试输出
 * @property bool $AutoRun           自动运行
 * @property string $SessionDriver   Session驱动
 * @property string $RequestDriver   Request驱动
 *
 * @package    Swiftx\System
 *
 */
class Config extends Object {

    /** @var array */
    protected $_data;

    /**
     * 设置调试模式
     * @param bool $value
     */
    protected function _setDebug($value){
        $this->_data['Debug'] = $value?true:false;
    }

    /**
     * 查看调试模式
     * @return bool
     */
    protected function _getDebug(){
        return empty($this->_data['Debug'])?false:true;
    }

    /**
     * 设置调试输出
     * @param string $value
     */
    protected function _setDebugOut($value){
        $this->_data['DebugOut'] = $value;
    }

    /**
     * 查看调试输出
     * @return bool
     */
    protected function _getDebugOut(){
        return $this->_data['DebugOut'];
    }

    /**
     * 设置自动运行
     * @param bool $value
     */
    protected function _setAutoRun($value){
        $this->_data['AutoRun'] = $value?true:false;
    }

    /**
     * 查看自动运行
     * @return bool
     */
    protected function _getAutoRun(){
        return empty($this->_data['AutoRun'])?false:true;
    }

    /**
     * 设置Session驱动
     * @param string $value
     */
    protected function _setSessionDriver($value){
        $value = str_replace('.', '\\', $value);
        $this->_data['SessionDriver'] = $value;
    }

    /**
     * 获取Session配置
     * @return string
     */
    protected function _getSessionDriver(){
        if(isset($this->_data['SessionDriver']))
            return $this->_data['SessionDriver'];
        return 'Swiftx\\Http\\Session';
    }

    /**
     * 设置Request驱动
     * @param string $value
     */
    protected function _setRequestDriver($value){
        $value = str_replace('.', '\\', $value);
        $this->_data['RequestDriver'] = $value;
    }

    /**
     * 获取Request配置
     * @return string
     */
    protected function _getRequestDriver(){
        if(isset($this->_data['RequestDriver']))
            return $this->_data['RequestDriver'];
        return 'Swiftx\\Http\\Request';
    }

}